[html
[head [title VHS Linuxkurs]]
[body
[footer Paul Hänsch | Linux Grundkurs | VHS Leipzig]
[slide
[h1 VHS Linux Grundkurs - Teil 2]
]
[slide [h2 Themen]
[ul
[li Wiederholung + Syntax der Kommandozeile]
[li Arbeit mit Dateien und Pfaden]
[li Datenträger und Dateisysteme]
]
]
[slide [h2 Nicht Vergessen!]
[ul [li Achja, Die Tastaturbelegung...]]
]
[slide [h1 Syntax der Kommandozeile]]
[slide [h2 Syntax der Kommandozeile]
[pre ~$ echo Hallo Welt]
]
[slide [h2 Syntax der Kommandozeile]
[pre
~$ echo Hallo Welt
Hallo Welt]
]
[slide [h2 Syntax der Kommandozeile]
[pre
~$ echo Hallo Welt
Hallo Welt
~$ echo Hallo Welt]
]
[slide [h2 Syntax der Kommandozeile]
[pre
~$ echo Hallo Welt
Hallo Welt
~$ echo Hallo Welt
Hallo Welt]
]
[slide [h2 Syntax der Kommandozeile]
[table width="85%"
[tr
[th Shellprompt] [th Befehl / Programm] [th Parameter 1] [th Parameter 2]
][tr
[th ~$] [td [pre echo]] [td [pre Hallo]] [td [pre Welt]]
]
]
]
[slide [h2 Syntax der Kommandozeile]
[pre ~$ echo "Hallo Welt"]
]
[slide [h2 Syntax der Kommandozeile]
[table width="85%"
[tr
[th Shellprompt] [th Befehl / Programm] [th Parameter 1]
][tr
[th ~$] [td [pre echo]] [td [pre Hallo Welt]]
]
]
]
[slide [h2 Syntax der Kommandozeile]
[h3 Identisch:]
[pre ~$ echo "Hallo Welt"]
[pre ~$ echo Hallo" "Welt]
[h3 [em Nicht] identisch:]
[pre ~$ echo Hallo " " Welt]
]
[slide [h2 Syntax der Kommandozeile]
[pre ~$ echo "Hallo Welt"]
[pre ~$ echo Hallo" "Welt]
[table width="85%"
[tr
[th Shellprompt] [th Befehl] [th Parameter 1]
][tr
[th ~$] [td [pre echo]] [td [pre Hallo Welt]]
]
]
]
[slide [h2 Syntax der Kommandozeile]
[pre ~$ echo Hallo " " Welt]
[pre ~$ echo "Hallo" " " "Welt"]
[table width="85%"
[tr
[th Shellprompt] [th Befehl] [th Parameter 1] [th Parameter 2] [th Parameter 3]
][tr
[th ~$] [td [pre echo]] [td [pre Hallo]] [td [pre ]] [td [pre Welt]]
]
]
]
[slide [h2 Syntax der Kommandozeile]
[h3 Folie vom ersten Kurstag:]
[pre ~$ echo "Hallo Welt!" \> datei1]
]
[slide [h2 Syntax der Kommandozeile]
[ul
[h3 Folie vom ersten Kurstag:]
[li mit [pre echo] können wir text [strike in eine Datei schreiben] [ul
[li [strong Eigentlich nur ausgeben!]]
]]
]
]
[slide [h2 Syntax der Kommandozeile]
[table width="85%"
[tr
[th Shellprompt] [th Befehl] [th Parameter 1] [th Umleitung] [th Ziel der Umleitung]
][tr
[th ~$] [td [pre echo]] [td [pre Hallo Welt!]] [td \>] [td datei1]
]
]
]
[slide [h2 Syntax der Kommandozeile]
[ul .uncover
[li style="margin-top: 1em;" [pre ~$ echo "Hallo Welt!" > datei1]]
[li style="margin-top: 1em;" [pre ~$ ls -l > datei1]]
[li style="margin-top: 1em;" [pre ~$ cat datei1 > datei2]]
[li style="margin-top: 1em;" [strong Shellkommandos sind eine Sprache!]]
]
]
[slide [h1 Arbeit mit Dateien und Pfaden]]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre ~$ touch datei1 datei2 datei3]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre ~$ mkdir ordner1 ordner2]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre ~$ mv datei1 ordner1]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre ~$ mv datei2 datei3 ordner2]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[table width="85%"
[tr
[th Shellprompt] [th Befehl] [th Parameter 1] [th Parameter 2]
][tr
[th ~$] [td [pre mv]] [td [pre datei1]] [td [pre ordner1]]
]
]
[table width="85%"
[tr
[th Shellprompt] [th Befehl] [th Parameter 1] [th Parameter 2] [th Parameter 3]
][tr
[th ~$] [td [pre mv]] [td [pre datei2]] [td [pre datei3]] [td [pre ordner2]]
]
]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[ul .uncover
[li [pre ~$ ls ordner1]]
[li [pre ~$ cd ordner1]]
[li [pre ~$ ls]]
[li [pre ~$ ls ordner1]]
]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[ul
[li [pre ~$ ls ordner1]]
[li [pre ~$ cd ordner1]]
[li [pre ~$ ls]]
[li [pre ~$ ls ordner1]]
[li Wir sind [strong in] [em ordner1], dieser Ordner enthält nicht seinerseits einen [em ordner1]]
]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre ~$ ls /home/live/ordner1]
funktioniert immer =\> absoluter Pfad
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[ul
[li Relativer Pfad: [pre ~$ ls ../ordner2]]
[li Absoluter Pfad: [pre ~$ ls /home/live/ordner2]]
]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre ~$ cp datei1 "Name mit Leerzeichen"]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[ul .uncover
[li [pre ~$ mv "Name mit Leerzeichen" Name_ohne_Leerzeichen]]
[li auch möglich:
[pre ~$ mv Name\\ mit\\ Leerzeichen Name_ohne_Leerzeichen]]
]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre
~$ mv Name_ohne_Leerzeichen ..
~$ mv ../Name_ohne_Leerzeichen .]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre
~$ mv ../ordner2/datei2 .
~$ mv /home/live/ordner2/datei3 .]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre
~$ cd /home/live
~$ rmdir ordner2]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre
~$ rmdir ordner1]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre
~$ rm ordner1]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre
~$ rm ordner1/datei2]
]
[slide [h2 Arbeit mit Dateien und Pfaden]
[pre
~$ rm -r ordner1/]
]
[slide [h2 Zusammenfassung]
[ul .uncover
[h3 Shellsyntax]
[li Die Shell erlaubt es Instruktionen zu beschreiben]
[li mit \> kann jede Programmausgabe in eine Datei geleitet werden]
[li Die Fähigkeiten von Programmen sind so erweiterbar]
]
]
[slide [h2 Zusammenfassung]
[ul .uncover
[h3 Pfade]
[li Einige Programme nehmen Pfade als Parameter an]
[li Pfade können nach Belieben absolut oder relativ sein]
[li Pfade mit Leerzeichen werden in Anführungszeichen gefasst, damit sie als einzelne Parameter gelten]
[li [strong Kommandos:] mkdir, cp, mv, rmdir, rm, rm -r]
]
]
[slide [h1 Datenträger und Dateisysteme]]
[slide [h2 Datenträger]
[ul .uncover
[li Enthalten Verzeichnisse und Dateien]
[li Aber: Gerät enthält nur einen "Datenstrom"]
[li Dateistrukturen müssen kodiert werden]
[li Ein Dateisystem kodiert Dateien auf einem Datenträger]
]
]
[slide [h2 Datenträger]
[ul .uncover
[h3 Beispiel: CD-ROM Images]
[li Dateisystem von CD-ROMs ist spezifiziert in ISO 9660]
[li ISO 9660 wird beim Schreiben von CDs zusamengebaut, ist nicht nachträglich veränderlich]
[li Unterstützt Unix-Benutzerrechte nur mit Erweiterungen]
[li Ganzes Dateisystem kann in .iso-Dateien gespeichert werden]
]
]
[slide [h2 Datenträger]
[ul .uncover
[h3 Beispiel: CD-ROMs]
[li CD-ROM kann von .iso-Datei gebrannt werden]
[li Inhalt der CD ist [em identisch] mit .iso-Datei]
[li Erstellen eines CD-Images: [pre ~$ cp /dev/cdrom live.iso]]
]
]
[slide [h1 Dateisysteme]]
[slide [h2 Dateisysteme]
[ul .uncover
[li [pre ~$ mkdir cdrom][br]]
[li [pre ~$ sudo mount live.iso cdrom/][br]]
[li [pre ~$ ls cdrom/]]
]
]
[slide [h2 Dateisysteme]
[ul .uncover
[h3 Diverse Kommandos]
[li [pre ~$ lsblk][br]]
[li [pre ~$ df] [pre ~$ df -h] [br]]
[li [pre ~$ mount][br]]
[li [pre ~$ umount]]
]
]
[slide [h1 Dateisysteme auf Datenträgern anlegen]]
[slide [h2 Dateisysteme und Datenträger]
[p [h3 Wir brauchen einen Computer ;-)]
[img "aqemu_1.jpg" "aQemu aus dem Menü starten"]
]
]
[slide [h2 Dateisysteme und Datenträger]
[p [h3 Wir brauchen einen Computer ;-)]
[img "aqemu_2.jpg" "eine neue Maschine anlegen"]
]
]
[slide [h2 Dateisysteme und Datenträger]
[p [h3 Wir brauchen einen Computer ;-)]
[img "aqemu_3.jpg" "Das CDROM-Laufwerk hinzufügen"]
]
]
[slide [h2 Dateisysteme und Datenträger]
[p [h3 Alternativ auf der Kommandozeile ;-)]
[pre ~$ dd bs=1M count=0 seek=2048 of=sparse.img]
[pre ~$ kvm -m 1024 sparse.img -cdrom /dev/cdrom]
]
]
[slide [h2 Dateisysteme und Datenträger]
[ul .uncover
[li Festplatten und USB-Sticks werden [em partitioniert]]
[li Dateisysteme werden idR. in einer Partition angelegt]
[li Ein Programm zum Anlegen von Partitionen und Dateisystemen:
[pre ~$ sudo gparted]
]
]
]
[slide [h2 Dateisysteme und Datenträger]
[ul .uncover
[h3 Wir brauchen:]
[li Eine Partitionstabelle: gpt]
[li Eine Partition]
[li Ein Dateisystem: vfat]
[li Eine zweite Partition]
[li Ein zweites Dateisystem: ext4]
]
]
[slide [h2 Dateisysteme und Datenträger]
[ul .uncover
[h3 Dateisysteme]
[li Ext4: Verbreitet für Linux-Systeminstallation]
[li FAT (vfat): Verbreitet für Wechselmedien [ul
[li Kann keine Zugriffsrechte abbilden]]]
[li exFAT: Moderneres FS für Wechselmedien (unterstützt Dateien \>4GB)]
[li NTFS: Dateisystem für Windows-Installationen]
[li Weitere: HPFS, BtrFS, UDF, ...]
]
]
[slide [h2 Dateisysteme und Datenträger]
[ul .uncover
[h3 Dateisystem-Tools auf der Kommandozeile:]
[li [pre ~$ sudo fdisk /dev/sda][br]]
[li [pre ~$ sudo mkfs.ext4 /dev/sda1][br]]
[li mkfs.vfat, mkisofs, ...]
]
]
[slide [h1 \...]]
[slide [h2 Zusammenfassung]
[ul
[li Um Dateien darzustellen benötigen wir ein Dateisystem]
[li Verschiedene Dateisysteme haben verschiedene Eigenschaften]
[li Datenträger werden partitioniert]
[li Partitionen nehmen Dateisysteme auf]
[li Wir [em mounten] Dateisysteme um auf Dateien zuzugreifen]
]
]
[slide [h2 Nächster Termin]
[ul
[li Nächster Termin: 2. Oktober]
[li Themen: Prozessverwaltung, Netzwerke]
]
]
]